layui.use(['table', 'layer','laypage'], function(){
    var table = layui.table,layer = layui.layer,laypage = layui.laypage,$ = layui.$,form = layui.form;
    var base = $("#baseId").context.baseURI;
    table.render({
        id: 'goodsListReload',
        elem: '#goodsList',
        url: base + '/goods/getList.html',
        cellMinWidth: 60, //全局定义常规单元格的最小宽度，layui 2.2.1 新增,
        //height: 'full-250',
        method: 'POST',
        where: {},        //请求的额外参数
        page: {//开启分页
            layout: ['count', 'prev', 'page', 'next', 'limit', 'refresh', 'skip'],
            first: '首页',
            prev: '上一页',
            next: '下一页',
            last: '尾页',
            groups: 10,//连续出现的页码个数
            limit: 10,//默认为10
            limits: [5,10,15,20,30,50,100],
            //count: 100, //数据总数
            //theme:'#FF5722',//颜色值
        },
        even: true,          //隔行换色
        //size: 'sm',       //sm （小尺寸） lg （大尺寸）  不设置有默认
        //skin: 'line',//line （行边框风格） row （列边框风格） nob （无边框风格）
        contentType: 'application/x-www-form-urlencoded',//默认
        //text:'',//自定义文本，如空数据时的异常提示等
        //toolbar: true,
        //defaultToolbar: ['filter', 'print', 'exports'],
        //totalRow: true,
        cols: [[                    //表头
            //{type:'checkbox'},
            {field: 'id', title: '商品ID', align: 'center'},
            {field: 'goodsName', title: '商品名称', align: 'center'},
            {field: 'goodsCode', title: '商品编码', align: 'center'},
            {field: 'firstCategory', title: '一级分类', align: 'center'},
            {field: 'secondCategory', title: '二级分类', align: 'center'},
            {field: 'specification', title: '规格',align: 'center'},
            {field: 'brandName', title: '品牌',align: 'center'},
            {field: 'supplierName', title: '供应商',align: 'center'},
            {field: 'inPrice', title: '进价',align: 'center'},
            {field: 'outPrice', title: '售价', align: 'center'},
            {field: 'updateDate', title: '更新时间', align: 'center'},
            {field: 'isPut', title: '是否上架',align: 'center'},
            {title: '操作',align: 'center', toolbar: '#operationId',width: 160}
        ]],
        request: {          //用于对分页请求的参数：page、limit重新设定名称
            pageName: 'pageNum', //页码的参数名称，默认：page
            limitName: 'pageSize' //每页数据量的参数名，默认：limit
        },
        response: {                     //果你想重新规定返回的数据格式，那么可以借助 response 参数
            statusName: 'code',         //规定数据状态的字段名称，默认：code
            statusCode: 200,            //规定成功的状态码，默认：0
            msgName: 'errMsg',          //规定状态信息的字段名称，默认：msg
            countName: 'totalRow',      //规定数据总数的字段名称，默认：count
            dataName: 'pageList'        //规定数据列表的字段名称，默认：data
        },
        parseData: function(resp){      //那么你需要将其解析成 table 组件所规定的数据
            if (resp.code == 200) {
                return {
                    "code": resp.code,          //解析接口状态
                    "totalRow": resp.data.totalRow, //解析数据长度
                    "pageList": resp.data.pageList  //解析数据列表
                };
            } else {
                return {
                    "code": resp.code,          //解析接口状态
                    "errMsg": resp.errMsg,     //解析提示文本
                };
            }
        },
        done: function(resp, currPage, totalRow){
            //$('tr').css({'font-weight': 'bold'})//修改表头样式
        }
    });
    //查询重新加载表格
    var $ = layui.$, active = {
        reload: function(){
            var goodsCode = $('#goodsCodeId').val();
            var goodsName = $('#goodsNameId').val();
            //执行重载
            table.reload('goodsListReload', {
                page: {
                    'curr': 1 //重新从第 1 页开始,
                },
                where: {
                    'goodsCode': goodsCode,
                    'goodsName': goodsName
                }
            });
        }
    };
    $('.goodsListTable .layui-btn').on('click', function(){
        var type = $(this).data('type');
        active[type] ? active[type].call(this) : '';
    });
    //新增点击事件
    var layerId;
    $(document).on('click','#addGoods',function(){
        layerId = layer.open({
            type: 1,
            title: ['新增商品','font-size:16px;font-weight: bold;text-align: center;align-content: center;'],
            content: $("#addGoodsPanel"), //这里content是一个普通的String
            skin: 'layui-layer-molv',//目前layer内置的skin有：默认 layui-layer-lan layui-layer-molv
            area: '750px',
            offset: '80px',
            btnAlign: 'r',
            closeBtn: 1,//两种风格的关闭按钮，可通过配置1和2来展示，如果不显示，则0
            shade: 0.5,//默认是0.3透明度的黑色背景（'#000'）。如果你想定义别的颜色，可以shade: [0.8, '#393D49']；如果你不想显示遮罩，可以shade: 0
            anim: 1, //平滑放大
            maxmin: false,//最大最小化
            fixed: true,//是非固定
            resize: true,//是否允许拉伸
            scrollbar: true,//是否允许浏览器出现滚动条
        })
    });
    //监听表单提交
    form.on('submit(addGoods)', function(data){
        var categoryId = data.field.categoryId;
        var category2Id = data.field.category2Id;
        if (category2Id != '') {
            data.field.categoryId = category2Id;
        }
        $.ajax({
            type: "POST",
            url: base + "/goods/add.html",
            data: data.field,
            dataType: "json",
            success: function(resp){
                if (resp.code == 200) {
                    layer.msg("新增成功");
                    layer.close(layerId);
                } else {
                    layer.msg(resp.errMsg,{icon: 5,anim: 6});
                }
            }
        });
        return false;//不可去除，否则提交两次
    });
});